So, ja gut, dann können wir starten. Schönen guten Tag, begrüße ich Sie zur ersten Vorlesung
der Rechneraktur im neuen Jahr und wünsche Ihnen natürlich erstmal ein schönes, gutes und vor
allen Dingen erfolgreiches neues Jahr. Vielleicht treffen wir sich ja irgendwann mal demnächst.
So, was sich auf das Erfolgreich bezieht und natürlich das Gut. Ja, die Vorlesung vor
Weihnachten konnte ich leider nicht mehr machen, weil mein ehemaliger Chef, leider aber der ist,
hat ein altes Alter erreicht, der Professor Lohmann gestorben ist und ich war dort auf der
Beerdigung. Der Max hatte die Vorlesung gehalten und da ging es ja nochmal um Cura und was ich
jetzt neu mache dieses Jahr, dass ich mal dieses OpenCL Modell Ihnen vorstellen möchte und dann
ganz kurz auf, deswegen habe ich Ihnen hier auch was mitgebracht, nur zum Zeigen allerdings, ein
bisschen auf Fikernarchitektur und im Bereich Embedded eingehen möchte, nur ganz kurz und das
ist dann auch gleich die Überleitung ins nächste Kapitel und ich habe das jetzt umgestellt gegenüber
den Jahren vorher. Das Kapitel, was die Embedded Prozessoren betrifft, das war in den Jahren vorher
immer das letzte Kapitel, dann hatte ich häufig immer nicht genügend Zeit, dann war das immer ein
bisschen an die Wand gedrängt und letztes Jahr haben mich Studenten gebeten, ob ich das nicht
lieber vorziehen möchte, dann hätte ich da mehr Zeit und das Kapitel über parallel Rechnerarchitekturen,
MPI und so weiter, das ist dann nach hinten gewandert. Gut, also dann fangen wir mal an. Dieses
OpenCL, hat schon mal jemand was mit OpenCL gemacht? Ja klar, genau, sonst noch nicht. Also
ich erwarte jetzt nicht und ich erwarte das auch nicht von Ihnen, dass Sie jetzt nach dieser Vorlesung
dann rausgehen und international gesuchte OpenCL Experten sind. Mir geht es jetzt darum, dass ich
Sie dafür sensibilisiere und wahrscheinlich hatten die meisten von Ihnen jetzt auch vor Weihnachten
zum ersten Mal was von CUDA gehört, kann das so sein, dass Sie vorher mit CUDA schon mal ein bisschen
was zu tun hatten? Sie haben schon mit CUDA gemacht und Sie werden jetzt viele Parallelen bei dem
OpenCL sehen und das OpenCL ist noch ein bisschen ein allgemeinerer Ansatz, aber viele der Ideen,
ja also ich würde fast sagen jetzt mal grob geschätzt, um mich darauf festnageln zu lassen,
60 bis 70 Prozent der Ideen, die in OpenCL vorkommen, finden Sie in CUDA wieder. Man könnte
vielleicht sogar sagen, ja es waren ja auch viele Entwickler, die an CUDA beteiligt waren,
Nvidia hat sich ja auch engagiert, die waren dann auch bei dem Standard, quasi Standard,
der bei OpenCL versucht wird zu arbeiten, mit dabei. Also eigentlich eine schöne Folie,
aber die habe ich jetzt nicht mehr geschafft damit einzubauen, da stand eben drauf, it's a
heterogeneous world, was wir mittlerweile haben, also es ist eine heterogene Welt hinsichtlich der
Prozessorarchitektur. Wir haben ASOV, wir haben GPUs, wir haben die normale CPU, wir hatten in der
Vergangenheit den Zellprozessor und wir haben, was sich hier unten drunter versteckt, ein Arm
Prozessor, die auch immer wichtiger werden und ja wir haben auch die FPGAs, der ist jetzt hier
nicht drauf, da kommen wir dann im nächsten Kapitel dazu. Und was man natürlich jetzt gerne
hätte, alle diese verschiedenen Architekturen haben sowohl ihre Berechtigung, dass es nicht so,
dass da irgendwas unnütz ist, die einen FPGA sind vielleicht jetzt nicht so schnell wie die GPUs,
dafür sind sie, was den Energiebedarf, die Energieeffizienz ausgedrückt in Gigaflow pro
aufgewandtes Watt betrifft unschlagbar. Da ist der FPGA, da kommt die GPU nie ran, würde ich mal
sagen, so ohne weiteres. Und ja, was hätte man natürlich jetzt, jetzt hatten wir also diese
verschiedenen Architekturen und man hätte den Wunsch, obwohl sie heterogen unterschiedlich sind,
die alle mit einer Programmiersprache programmieren zu können oder zumindest da so eine Idee zu haben,
wie man mit einem Modell all diese unterschiedlichen Architekturen in den Griff bekommt. Und das ist
der Ansatz von OpenCL, ursprünglich von Apple gegründet und AMD hat sich vor allen Dingen stark
engagiert, Nvidia hat sich nach das Wissen so ein bisschen daraus zurückgezogen und was jetzt aber
in den letzten Jahren vor allen Dingen passiert ist, dass man OpenCL versucht für diese Empathet
Devices da zu erschließen. So ein OpenCL Programm, also OpenCL steht für Open Computing
Language, es sind zwei Abschnitte aufgeteilt. Ein Abschnitt wird auf dem sogenannten Device
ausgeführt, das ist dann also mein Beschleuniger, das kann der GPU sein, ein FPGA oder auch ein
digitaler Signalprozessor und der andere Abschnitt wird auf dem Host ausgeführt und das ist in der
Regel die CPU. Also ich habe mir auch bei Max mitbekommen, dass die GPU für sich alleine eigentlich
Presenters
Zugänglich über
Offener Zugang
Dauer
01:29:10 Min
Aufnahmedatum
2013-01-09
Hochgeladen am
2019-04-30 04:49:03
Sprache
de-DE
-
Organisationsaspekte von CISC und RISC-Prozessoren
-
Behandlung von Hazards in Pipelines
-
Fortgeschrittene Techniken der dynamischen Sprungvorhersage
-
Fortgeschritten Cachetechniken, Cache-Kohärenz
-
Ausnutzen von Cacheeffekten
-
Architekturen von Digitalen Signalprozessoren
-
Architekturen homogener und heterogener Multikern-Prozessoren (Intel Corei7, Nvidia GPUs, Cell BE)
-
Architektur von Parallelrechnern (Clusterrechner, Superrechner)
-
Effiziente Hardware-nahe Programmierung von Mulitkern-Prozessoren (OpenMP, SSE, CUDA, OpenCL)
-
Leistungsmodellierung und -analyse von Multikern-Prozessoren (Roofline-Modell)
- Patterson/Hennessy: Computer Organization und Design
-
Hennessy/Patterson: Computer Architecture - A Quantitative Approach
-
Stallings: Computer Organization and Architecture
-
Märtin: Rechnerarchitekturen